package cn.com.nes.site.service.project;

import cn.com.nes.mybatis.agent.project.entity.ProjectServiceUserAreaCode;
import cn.com.nes.site.controller.project.vo.DelProjectServiceUserVO;
import cn.com.nes.site.entity.bo.project.SetServiceUserAreaCodeBO;
import cn.com.nes.site.service.project.dto.ProjectServiceUserDTO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface ProjectServiceUserAreaCodeService extends IService<ProjectServiceUserAreaCode> {

    /**
     * 查询施工人id List
     */
    List<Long> getAuthIdListByAreaCode(String serviceAreaCode);

    /**
     * 设置服务区域
     */
    void setAreaCode(SetServiceUserAreaCodeBO bo) throws Exception;

    /**
     * 查询项目人员分包的区域信息
     */
    void setServiceUserAreaCode(List<ProjectServiceUserDTO> projectServiceUserList);

    /**
     * 删除施工队员负责区域信息
     */
    void deleteByAuthId(DelProjectServiceUserVO vo) throws Exception;


    /**
     * 查询服务人员的服务区域
     * @param authId    权限ID
     * @return
     * @throws Exception
     */
    List<ProjectServiceUserAreaCode> getList(Long authId) throws Exception;


    /**
     * 查询服务区域的行政区划代码
     * @param authId    权限ID
     * @return
     * @throws Exception
     */
    List<String> getServiceAreaCodes(Long authId) throws Exception;

}
